(1) Field of the Invention
The present invention relates to a data transmission device and method for generating a plurality of compressed/encoded data of different bit rates from a single video signal and simultaneously transmitting the generated data onto a network, and more particularly, to a data transmission device and method applicable to real-time transmission of such compressed/encoded data.
(2) Description of the Related Art
Recent image compression/encoding techniques such as MPEG (Moving Picture Experts Group) have made it easy to deliver moving picture data over networks. However, in the case of delivering such data through the Internet in particular, the delivered data may possibly be transferred via analog telephone lines or ISDN (Integrated Services Digital Network) lines, and broadband communication is not necessarily available to every recipient. Under the present circumstances, therefore, it is necessary that the resolution be lowered or the compression ratio be increased to permit data to be delivered at a relatively low bit rate.
In view of this, a moving picture data delivery scheme has been conceived wherein two types of data, that is, one for delivery to a relatively broadband network, such as an intranet in a corporation, and the other for delivery to a relatively narrowband network, such as the Internet, are generated from a single video source and are delivered simultaneously. For example, for a broadband network, a data stream compressed/encoded according to MPEG-2 is delivered at a bit rate of about 6 Mbps, and for a narrowband network, a data stream compressed/encoded according to MPEG-4 is delivered at a bit rate of about 100 kbps.
Heretofore, when generating a plurality of data streams for delivery at different bit rates from a single video source, encoders equal in number to the data streams to be generated are used to encode data distributed from the video source. Alternatively, a transcoder or the like is used to decode the data stream for broadband delivery and then to again encode the decoded data stream to obtain a data stream for narrowband delivery.
However, the delivery of moving picture data has now become so popularized that there is a strong demand for reduction in cost of deliverer-side systems as well as in size of such systems to save installation space. Also, in recent years, real-timeliness or simultaneity of delivered data is often given importance especially in cases where the water levels of rivers or dams, roads, etc. are monitored from a remote location or a conference or a concert is broadcast live. Accordingly, there has been proposed an idea of incorporating a plurality of encoder engines into a single encoder, to generate a plurality of data streams of different bit rates and deliver the generated data streams simultaneously.
Meanwhile, in the case of data which has been compressed/encoded by using inter-frame prediction as in MPEG, an appreciable difference often occurs between the data amount of a picture which can be decoded by its own data only and the data amount of a picture which has been generated using the inter-frame prediction. Accordingly, the processing load greatly varies during the image encoding/decoding process, and also when such data is transmitted over a network, an actual amount of transmitted data can momentarily rise well above the average bit rate.
As regards techniques for generating data by encoding individual objects of image and then multiplexing the encoded objects, there has been proposed a method in which the start timings for encoding objects are offset in accordance with the ranges of variations in the amount of code generated per frame for the individual objects, to smooth variation in the amount of generated code as well as in the processing load (e.g., Japanese Unexamined Patent Application No. H10-023427 (cf. Paragraph Nos. [0037] to [0051], FIG. 5)).
Thus, the compression/encoding techniques using the inter-frame prediction as in MPEG are associated with a problem that the amount of generated code varies over a wide range, as mentioned above. Especially in the case where a plurality of compressed/encoded data of different bit rates are generated from a single video source and are delivered simultaneously, the amount of generated code varies over an even wider range, giving rise to a problem that data cannot be received properly where the amount of data transmitted onto the network momentarily increased.
FIG. 9 illustrates variation in the amount of data observed when a plurality of compressed/encoded data of different bit rates are simultaneously delivered, wherein FIG. 9(A) shows exemplary arrangements of pictures in respective data streams generated according to MPEG-2, and FIG. 9(B) is a graph showing a total amount of data generated with respect to each picture.
In FIG. 9(A) is illustrated the case where two data streams A and B of different bit rates are generated from a single video source by two encoders. A data stream encoded according to MPEG-2 (or MPEG-1) comprises an I picture encoded in a closed manner within a frame, a P picture encoded using forward prediction, and a B picture encoded using bidirectional prediction. The data streams A and B shown in FIG. 9(A) have a general picture arrangement in which one I or P picture is preceded and followed by two B pictures. A GOP (Group Of Pictures) is a unit that allows playback of the data stream in the middle, and one GOP always includes one or more I pictures. In the illustrated example, a fixed number of pictures constitutes one GOP.
Since the I picture is generated by closed encoding within a frame, its data amount is noticeably large, compared especially with the B picture. In a data stream having a picture arrangement as shown in FIG. 9(A), the data amount of I pictures accounts for nearly 1/3 of the total amount of the data stream.
In the illustrated example, every twelve pictures include one I picture, and therefore, in terms of an average data delivery rate per second, half of the amount of data delivered during a period of 11/12 second is delivered within the remaining period of 1/12 second at a time. Where the data stream has an average bit rate of 6 Mbps, for example, there is a possibility that data is generated at an instantaneous rate of 24 Mbps when an I picture is generated. Further, since the bit rate of 24 Mbps is a value that applies to the case where data is delivered uniformly during a period of 1/12 second, data can possibly be transmitted at an even higher rate if the data is transmitted at a time as soon as it is generated.
Also, in the case where multiple data streams are encoded simultaneously by multiple encoder engines incorporated in a single encoder, the encoding processes are usually started at the same time and I, B and P pictures are generated at respective identical positions, as shown in FIG. 9(A). Consequently, at the timing when I pictures are generated for the respective data streams, the total amount of generated data sharply increases for a moment. For example, where the average bit rates of the data streams A and B are 6 Mbps and 3 Mbps, respectively, the data generation rate reaches 36 Mbps (=24 Mbps+12 Mbps) at its peak. Such extreme unevenness in the amount of generated data instantaneously increases the load on the network for transmitting data and causes packet loss etc.
It is possible to generate encoded data in such a manner as to reduce unevenness in the amount of generated data. In this case, however, it is necessary that the encoder be provided therein with a large-capacity buffer to encode data while temporarily storing a considerable amount of data. As a result, the transmission of data is delayed behind the original video, thus impairing the simultaneity. Also, complex control is required, which leads to an increase in cost of the device.